Enable explicit API mode - #9
Open
UnknownJoe796 wants to merge 1 commit into
Open
Conversation
iHoonter
self-requested a review
July 28, 2026 21:28
iHoonter
approved these changes
Jul 28, 2026
Turn on kotlin { explicitApi() } and add the visibility modifiers and explicit
return types it requires across the public surface. No behavior changes.
Rebased onto the reactive engine fixes. The twelve files the two branches both
touched were resolved to the engine-fixes content and re-annotated from the
compiler's diagnostics, rather than merged by hand - the original commit
predates the cleanup commits, so its side of each conflict carried back code
that no longer exists (runOnceWhileDead, skipDependencyRegistration, the old
once() implementation, the throw-on-reentrancy check). ReactiveThreadCheck.kt
stays deleted.
The declarations new since the original commit are annotated to match: the
reentrancyLimit parameter is public on TypedReactiveContext and reactive(), and
`active` is public again. reentrancyLimit on Remember is a plain constructor
parameter rather than a private val, following what this commit already did to
useLastWhileLoading - both are only read in an initializer, so neither needs a
backing field. RememberSuspending's useLastWhileLoading gets the same treatment,
which the original missed.
TypedReactiveContext's bodyless `companion object` needs explicit braces once it
carries a modifier.
The two added imports (CompletableJob, CoroutineContext) exist only to name
types that were previously inferred.
allTests green on JVM (140 tests), JS, and iOS simulator.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GA6LAUN9Lpo5hyK3KVJteJ
UnknownJoe796
force-pushed
the
reactive-api-split
branch
from
July 29, 2026 19:29
5735a46 to
0858535
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Turn on kotlin { explicitApi() } and add the visibility modifiers and explicit return types it requires across the public surface. No behavior changes.
The two added imports (CompletableJob, CoroutineContext) exist only to name types that were previously inferred.
jvmTest 113 tests green; JS + iOS compile green.
Claude-Session: https://claude.ai/code/session_017UHkALCCi6UrsGba6wUGWp